﻿#include <iostream>
#include <vector>
using namespace std;

// 游游的重组偶数: 游游拿到了一个正整数，她希望你能重排这个正整数的数位，使得它变成偶数（不能有前导零）。你能帮帮她吗
int main() {
    int q;
    cin >> q;
    while (q--)
    {
        string str;
        cin >> str;
        int i = str.size() - 1;
        for (; i >= 0; i--)
        {
            if ((str[i] - '0') % 2 == 0)
            {
                swap(str[i], str[str.size() - 1]);
                break;
            }
        }
        if (i >= 0)
            cout << str << endl;
        else
            cout << -1 << endl;
    }
}


// 体操队形: dd作为体操队队长，在给队员们排队形，体操队形为一个单独的纵列，体操队有n个同学，标号为1∼n，
// 对于i(1≤i≤n)号队员，会有一个诉求(1≤a[i]≤n)，表示他想排在a[i]号队员前面，当a[i] = i时，我们认为他没有位置需求，
// 随便排哪儿都行，dd想知道有多少种队形方案，可以满足所有队员的要求。
int count = 0;
bool ba[11] = { false };

void dfs(int pos, vector<int>& a, int n)
{
    if (pos == n + 1)
    {
        count++;
        return;
    }
    for (int i = 1; i <= n; i++)
    {
        if (ba[i] == false)
        {
            if (ba[a[i]] == true)
                return;
            ba[i] = true;
            dfs(pos + 1, a, n);
            ba[i] = false;
        }
    }
}

int main()
{
    int n;
    cin >> n;
    vector<int> a(n + 1);
    for (int i = 1; i <= n; i++)
        cin >> a[i];
    dfs(1, a, n);
    cout << count;
    return 0;
}